package com.meter.basic.service;

import java.util.List;
import com.baomidou.mybatisplus.extension.service.IService;
import com.meter.basic.domain.BasicHouse;
import com.meter.common.core.domain.Ztree;

/**
 * 住房信息Service接口
 * 
 * @author ruoyi
 * @date 2024-10-04
 */
public interface IBasicHouseService extends IService<BasicHouse>
{
    /**
     * 查询住房信息
     * 
     * @param houseId 住房信息主键
     * @return 住房信息
     */
    public BasicHouse selectBasicHouseByHouseId(Long houseId);

    /**
     * 查询住房信息列表
     * 
     * @param basicHouse 住房信息
     * @return 住房信息集合
     */
    public List<BasicHouse> selectBasicHouseList(BasicHouse basicHouse);

    /**
     * 新增住房信息
     * 
     * @param basicHouse 住房信息
     * @return 结果
     */
    public int insertBasicHouse(BasicHouse basicHouse);

    /**
     * 修改住房信息
     * 
     * @param basicHouse 住房信息
     * @return 结果
     */
    public int updateBasicHouse(BasicHouse basicHouse);

    /**
     * 批量删除住房信息
     * 
     * @param houseIds 需要删除的住房信息主键集合
     * @return 结果
     */
    public int deleteBasicHouseByHouseIds(String houseIds);

    /**
     * 删除住房信息信息
     * 
     * @param houseId 住房信息主键
     * @return 结果
     */
    public int deleteBasicHouseByHouseId(Long houseId);

    /**
     * 导入住房信息数据
     *
     * @param houseList 住房信息列表
     * @param operName 操作用户
     * @return 结果
     */
    public String importBaseHouse(List<BasicHouse> houseList, boolean updateSupport, String operName);

    /**
     * 查询住房信息树列表
     * 
     * @return 所有住房信息信息
     */
    public List<Ztree> selectBasicHouseTree();

    /**
     * 查询住房信息树列表
     *
     * @return 所有住房信息信息
     */
    public List<Ztree> selectBasicHouseAllTree();
}
